function OnChange_ConfigType(obj)
{
    
    var index = obj.sender.selectedIndex;

    var dataItem = this.dataItem(obj.item);
    var EnvType = localStorage.getItem("vEtype");

    configtype = dataItem.ConfigTypes;

   
    if (configtype == "Device Config") {

        ConfigNames = [];

        var grid = $('#cmb_confignames').data("kendoComboBox");
        
        grid.input.attr("placeholder", "Loading...");
       // kendo.ui.progress($('span.k-select'), true); //enabling the load cursor until data received

        $.ajax({
            type: "POST",
            url: "/RCData/GetUnitConfigdetails",
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            cache: false,
            data: JSON.stringify({env:EnvType}),
            success: function successFunc(data) {
                if (!!data === true) {
                   // var grid = $('#cmb_confignames').data("kendoComboBox");

                   // kendo.ui.progress($('span.k-select'), false); //enabling the load cursor until data received

                    grid.dataSource.data(ConfigNames); //To make empty, before assigning new list
                    for (var i = 0; i < data.Data.length; i++) {
                        ConfigNames.push(data.Data[i].ConfigurationName);
                    }
                    UnitsStatusPatterns = data;
                                       
                    grid.input.attr("placeholder", "Select Config Names");

                    for (var i = 0; i < ConfigNames.length; i++)
                        grid.dataSource.add({ ConfigNames: ConfigNames[i] });

                    $('#btnctrl').prop('disabled', false);
                }

                $('.myMask').css("display", "none");
            },
            error: function errorFunc(data) {

            }
        });
    }
    else if (configtype == "Alarm Config") {
        ConfigNames = [];
        var grid = $('#cmb_confignames').data("kendoComboBox");
        grid.input.attr("placeholder", "Loading...");
        //kendo.ui.progress($('span.k-select'), true); //enabling the load cursor until data received

        $.ajax({
            type: "POST",
            url: "/RCData/GetAlarmConfigdetails",
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            cache: false,
            data: JSON.stringify({ env: EnvType }),
            success: function successFunc(data) {
                if (!!data === true) {
                    

                    grid.dataSource.data(ConfigNames); //To make empty, before assigning new list
                    for (var i = 0; i < data.Data.length; i++) {
                        ConfigNames.push(data.Data[i].ConfigurationName);
                    }
                    AlarmPatterns = data;

                    grid.input.attr("placeholder", "Select Config Names");
                    
                    for (var i = 0; i < ConfigNames.length; i++)
                        grid.dataSource.add({ ConfigNames: ConfigNames[i] });

                    $('#btnctrl').prop('disabled', false);

                }

                $('.myMask').css("display", "none");

               // kendo.ui.progress($('span.k-select'), false); //enabling the load cursor until data received
            },
            error: function errorFunc(data) {

            }
        });
    }
    else if(configtype== "PData")
    {
        ConfigNames = [];

      //  kendo.ui.progress($('span.k-select'), true); //enabling the load cursor until data received
        var grid = $('#cmb_confignames').data("kendoComboBox");
        grid.input.attr("placeholder","Loading...");
        $.ajax({
            type: "POST",
            url: "/RCData/GetPDataConfigdetails",
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            cache: false,
            data: JSON.stringify({ env: EnvType }),
            success: function successFunc(data) {
                if (!!data === true) {
                   

                    grid.dataSource.data(ConfigNames); //To make empty, before assigning new list
                    for (var i = 0; i < data.Data.length; i++) {
                        ConfigNames.push(data.Data[i].ConfigurationName);
                    }
                    pDataPatetrn = data;

                    grid.input.attr("placeholder", "Select Config Names");
                    for (var i = 0; i < ConfigNames.length; i++) {
                        if(ConfigNames[i]!=ConfigNames[i+1])
                        grid.dataSource.add({ ConfigNames: ConfigNames[i] });
                    }

                    $('#btnctrl').prop('disabled', false);
                }

                $('.myMask').css("display", "none");

                //kendo.ui.progress($('span.k-select'), false); //enabling the load cursor until data received
            },
            error: function errorFunc(data) {

            }
        });
    }
   
}

function OnChange_ConfigNames(obj) {

    $('#btnctrl').prop('disabled', true); // disabling the Create New button here, since user selects existing config, no need to enable create new config.

    var index = obj.sender.selectedIndex;

    if (index < 0) {//if config name not existed
        var combobox = $("#cmb_confignames").data("kendoComboBox");
        ConfigurationName = combobox._prev;
        configName = ConfigurationName;

    }
    else {
        var dataItem = this.dataItem(obj.item);

        configName = dataItem.ConfigNames;
        selectedConfigName = configName;
        var UnitPattern;
        if (configtype == "Device Config" && configName != null) {

            result = []; //making result null
            configNamechangeCount = configNamechangeCount + 1;
            for (var i = 0; i < UnitsStatusPatterns.Data.length; i++) {
                if (configName == UnitsStatusPatterns.Data[i].ConfigurationName) {


                    UnitPattern = UnitsStatusPatterns.Data[i].Statuspatterns; //status patetrns

                    for (var i = 0; i < 10; i++) {
                        var myobject = new Object();
                        myobject.SNO = i + 1;
                        myobject.PassengerStatus = 0;
                        myobject.ElevatorShutdown = 0;
                        myobject.TrappedPassenger = 0;
                        myobject.ComponentStatus = 0;
                        myobject.ActiveVoiceVideoCall = 0;
                        myobject.controllerStatus = 0;
                        myobject.Delay = 0;
                        result.push(myobject);
                    }


                }

            }

         //   if (configNamechangeCount == 1)
                GenerateDeviceConfigGrid();

            $('#Patternbtn').html('Edit');  

            var temp = new Array();
            var grid = $('#ptrncmb').data("kendoComboBox");
            grid.dataSource.data(""); //making combo box empty before adding patetrns Names.

            for (var i = 0; i < UnitPattern.length; i++) {
                if (temp.indexOf(UnitPattern[i].PatternName) < 0) {
                    temp.push(UnitPattern[i].PatternName);
                    grid.dataSource.add({ text: UnitPattern[i].PatternName });
                }
            }

            //for (var i = 0; i < 1; i++)
            //    $('.Multiselectval option[value=' + myobject.ComponentStatus.ControllerId + ']').attr('selected', true);


        }
        else if (configtype == "Alarm Config" && configName != null) {
            var AlarmPattern;
            result = []; //making result null
            for (var i = 0; i < AlarmPatterns.Total; i++) {
                if (configName == AlarmPatterns.Data[i].ConfigurationName) {

                    var myobject = new Object();

                    //myobject.SNO = i;

                    AlarmPattern = AlarmPatterns.Data[i].Alarmpatterns; //status patetrns

                    //myobject.PatternName = AlarmPattern[0].PatternName;
                    //myobject.AlarmDelay = AlarmPattern[0].AlarmDelay;
                    //myobject.AlarmAttributeName = AlarmPattern[0].AlarmsToGenerate;


                    //result.push(myobject);

                }
            }

            GenerateAlarmConfigGrid();

            $('#Patternbtn').html('Edit');

            var temp = new Array();
            var grid = $('#ptrncmb').data("kendoComboBox");
            grid.dataSource.data(""); //making combo box empty before adding patetrns Names.

            for (var i = 0; i < AlarmPattern.length; i++) {
                if (temp.indexOf(AlarmPattern[i].PatternName) < 0) {
                    temp.push(AlarmPattern[i].PatternName);
                    grid.dataSource.add({ text: AlarmPattern[i].PatternName });

                }
            }
        }
        else
        {
            var PDataPtrn;
            for (var i = 0; i < pDataPatetrn.Total; i++) {
                if (configName == pDataPatetrn.Data[i].ConfigurationName) {

                    var myobject = new Object();

                    //myobject.SNO = i;

                    PDataPtrn = pDataPatetrn.Data[i].RCPDataPatterns; //status patetrns

                }
            }

            GeneratePDataGrid();

            $('#Patternbtn').html('Edit');

            var temp = new Array();
            var grid = $('#ptrncmb').data("kendoComboBox");
            grid.dataSource.data(""); //making combo box empty before adding patetrns Names.

            for (var i = 0; i < PDataPtrn.length; i++) {
                if (temp.indexOf(PDataPtrn[i].PatternName) < 0) {
                    temp.push(PDataPtrn[i].PatternName);
                    grid.dataSource.add({ text: PDataPtrn[i].PatternName });

                }
            }
        }
    }//else
}